package 系统复习.面试题.矩阵;

import java.util.HashMap;
import java.util.Map;

/**
 * 给你一个大小为 m x n 的图像 picture ，图像由黑白像素组成，'B' 表示黑色像素，'W' 表示白色像素，请你统计并返回图像中 黑色 孤独像素的数量。
 * 黑色孤独像素 的定义为：如果黑色像素 'B' 所在的同一行和同一列不存在其他黑色像素，那么这个黑色像素就是黑色孤独像素。
 */
public class L531 {

    public int findLonelyPixel(char[][] picture) {

        if (picture == null) {
            return 0;
        }

        int row_num = picture.length;
        int col_num = picture[0].length;
        int row[] = new int[row_num];
        int col[] = new int[col_num];

        for (int i = 0; i < row_num ;i++) {
            for (int j = 0; j < col_num; j++) {
                if (picture[i][j] == 'B') {
                    row[i]++;
                    col[j]++;
                }
            }
        }

        int res = 0;

        for (int i =0 ; i < row_num ;i++) {
            if (row[i]!=1) {
                continue;
            }

            for (int j = 0; j < col_num ;j++) {
                if (picture[i][j]=='B' && row[i] == 1 && col[j]==1) {
                    res++;
                }
            }
        }

        return res;

    }
}
